// package Weekday
package main

import "fmt"

func main() {
	test5()
}
func forDemo() {
	for i := 0; i < 10; i++ {
		fmt.Println(i)
	}
}
func test() {
	i := 0
	for i < 10 {
		fmt.Println(i)
		i++
	}
}
func test2() {
	for {
		fmt.Println("hello world")
	}
}

/*
*
slice 遍历
*/
func test3() {
	slice := []int{1, 2, 3}
	for i, v := range slice {
		fmt.Println(i, v)
	}
}

/*
*
map遍历
*/
func test4() {
	m := map[string]int{"a": 1, "b": 2}
	for k, v := range m {
		fmt.Println(k, v)
	}
}

/*
*只会输出一个值，即管道内的类型对应的数据
 */
func test5() {
	// 初始化一个通道
	c := make(chan int)

	// 启动一个 goroutine, 功能是往通道中推送数据 1、2、3，然后关闭通道
	go func() {
		c <- 1
		c <- 2
		c <- 3
		close(c)
	}()

	for value := range c {
		fmt.Println(value)
	}
}

/*
*
_  占位符
*/
func test6() {
	m := map[int]string{1: "a", 2: "b"}
	for _, value := range m {
		fmt.Printf("value: %s\n", value)
	}
}
